/**
 * Esta clase contiene un método que escribe un texto en un fichero mediante un
 * flujo de bytes. Se utilizan las clases FileOutputStream y OutputStreamWriter.
 */
package tools.files;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import tools.GUI.PanelGUI;

/**
 *
 * @author Félix Marín Ramírez || felixmurcia@gmail.com
 * @version 1.0.1b
 */
public class EscribirCadenaFOS implements java.io.Serializable {

    /**
     *
     * @param fichero Parámetro que contiene el nombre del fichero y/o la ruta
     * del mismo en el cual se escribirá el contenido del parametro cadena.
     * @param cadena Parámetro que contiene el texto que será escrito en el
     * fichero.
     * @param continuar Parámetro de tipo boleano a partir del cual indicarmos
     * si se sobre escribe el fichero o se añade la nueva cadena al final del
     * mismo.
     * @throws FileNotFoundException En el caso de que no se encuentre el
     * fichero se lanzará una excepción.
     * @throws IOException En caso de que no se pueda esrcirbir en el fichero se
     * lanzará una excepción.
     */
    public void escribirCadenaFOS(File fichero, String cadena, boolean continuar) throws FileNotFoundException, IOException {
        FileOutputStream fos = new FileOutputStream(fichero, continuar);
        OutputStreamWriter osr = new OutputStreamWriter(fos);

        if (fichero.canWrite()) {
            osr.write(cadena);
            osr.close();
        } else {
            PanelGUI.mensajeError("No se puede escribir en el fichero");
        }
    }
}
